package pos.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Evento {
	
	private String eventoid;
	private String titulo;
	private String descripcion;
	private String fecha_inicio;
	private String fecha_fin;
	private Deporte deporte;
	private Lugar lugar;
	private int cerrado;
	private int publico;
	private int limite_inscripciones;
	private List usuarios_seleccionados;	
	private List peticiones;
	private String genero;
	private List mensajes;
	private Usuario creador;
	
	public Usuario getCreador() {
		return creador;
	}

	public void setCreador(Usuario creador) {
		this.creador = creador;
	}

	public void addMensajes(Mensaje a){
		this.mensajes.add(a);
	}
	
	public List getMensajes() {
		return mensajes;
	}
	public void setMensajes(List mensajes) {
		this.mensajes = mensajes;
	}
	/*Constructores*/
	public Evento(String titulo,String descripcion,String fecha_inicio, String fecha_fin,Usuario creador, Deporte deporte,Lugar lugar,int limite_inscripciones,String genero )
	{
		this.titulo=titulo;
		this.descripcion=descripcion;
		this.fecha_inicio=fecha_inicio;
		this.fecha_fin=fecha_fin;
		this.deporte=deporte;
		this.lugar=lugar;
		this.cerrado = 0;
		this.limite_inscripciones=limite_inscripciones;			
		this.usuarios_seleccionados= new ArrayList();
		this.peticiones=new ArrayList();
		this.genero = genero;
		
		
	}
	public Evento()
	{
		titulo="Evento por defecto";
		descripcion="Evento por defecto";	
		this.usuarios_seleccionados= new ArrayList();
		this.peticiones=new ArrayList();
		this.limite_inscripciones=100;		
	}
	
	/*Metodos*/
	

	public String getTitulo() {
		return titulo;
	}

	public void setTitulo(String titulo) {
		this.titulo = titulo;
	}
	public String getFecha_inicio() {
		return fecha_inicio;
	}

	public void setFecha_inicio(String fecha_inicio) {
		this.fecha_inicio = fecha_inicio;
	}

	public String getFecha_fin() {
		return fecha_fin;
	}

	public void setFecha_fin(String fecha_fin) {
		this.fecha_fin = fecha_fin;
	}
		
	public void estaCerrado(){
		int a = usuarios_seleccionados.size();
		if (a == limite_inscripciones){
			this.cerrado = 1;
		}else this.cerrado = 0;
	}
	


	public int getLimite_inscripciones() {
		return limite_inscripciones;
	}

	public void setLimite_inscripciones(int limite_inscripciones) {
		this.limite_inscripciones = limite_inscripciones;
	}

	public List getUsuarios_seleccionados() {
		return usuarios_seleccionados;
	}

	public void setUsuarios_seleccionados(List usuarios_seleccionados) {
		this.usuarios_seleccionados = usuarios_seleccionados;
	}
    
	public String geteventoid() {
		return eventoid;
	}

	public void seteventoid(String eventoid) {
		this.eventoid = eventoid;
	}

	void checkCerrado(){
		int a = usuarios_seleccionados.size();
		if (limite_inscripciones == a){
			this.cerrado = 1;
		}
		else this.cerrado = 0;
	}
	

	public void setFechaFin (String fecha){
		fecha_fin = fecha;
	}
	
	public void getFechaFin(String inicio)
	{
		this.fecha_inicio= inicio;
	}
	public void setFechaInicio (String fecha){
		fecha_inicio = fecha;
	}
	public String getFechaInicio()
	{
		return this.fecha_inicio;
	}
	public void setCerrado (int log){
		cerrado = log;
	}

	public void setDeporte (Deporte deporte){
		this.deporte = deporte;
	}
	
	public void setLugar (Lugar lugar){
		this.lugar = lugar;
	}
		
	public void addUsuarios_seleccionados (Usuario user){
		this.usuarios_seleccionados.add(user);
	}
	public void addPeticiones (Usuario user){
		this.peticiones.add(user);
	}
	
	public int getCerrado(){
		return this.cerrado;
	}
	
	public String getFechaFin (){
		return this.fecha_fin;
	}
		
	

	
	public Deporte getDeporte (){
		return this.deporte;
	}
	
	public Lugar getLugar(){
		return this.lugar;
	}	
	public void eliminarUsuarios_seleccionados (Usuario user){
		int a = this.usuarios_seleccionados.indexOf(user);
		if (a == -1){
			System.out.println( "El usuario a borrar del evento no existe");
		}else{
			this.usuarios_seleccionados.remove(a);
		}
	}
	
	public List getPeticiones (){
		return this.peticiones;
	}
	
	public void eliminarPeticiones (Usuario user){
		int a = this.peticiones.indexOf(user);
		if (a == -1){
			System.out.println( "El usuario a borrar del evento no existe");
		}else{
			this.peticiones.remove(a);
		}
	}
	
	
	public void setPeticiones(List peticiones) {
		this.peticiones = peticiones;
	}
	public String getDescripcion()
	{
		return this.descripcion;
	}
	public void setDescripcion(String descripcion)
	{
		this.descripcion=descripcion;
	}

	public String getGenero() {
		return genero;
	}
	public void setGenero(String genero) {
		this.genero = genero;
	}

	public int esPublico() {
		return publico;
	}

	public void setPublico(int publico) {
		this.publico = publico;
	}
	
	
}
